Selamlar Beyza,
Spinner'dan seçilen verileri bir listeye ekliyorsanız, listenin sonuna bir "Ekle" veya "Kaydet" butonu ekleyebilirsiniz. Bu butona tıklandığında, listenin tamamını veritabanına kaydedebilirsiniz
Örneğin, Android Studio'da bir RecyclerView kullanarak liste görüntüleyebilirsiniz. RecyclerView'a bir ViewHolder ekleyerek, sonunda bir buton gösterebilirsiniz. Bu butona tıklandığında, seçilen tüm öğeleri bir listeye ekleyebilir ve veritabanına kaydedebilirsiniz
Aşağıdaki örnek kod, seçilen öğeleri bir liste olarak alır ve sonunda bir "Kaydet" butonu ekler
// Veritabanı bağlantısı
private SQLiteDatabase db;
// Spinner'dan seçilen öğeleri tutacak liste
private List<String> selectedItems = new ArrayList<>();
// Liste görüntüleyicisi
private RecyclerView recyclerView;
// Listeye öğe ekleme metodunu çağıran buton
private Button saveButton;
// Liste görüntüleyicisi için veri adaptörü
private MyAdapter adapter;
// Seçilen öğeleri listeye ekleyen metod
private void addSelectedItem(String item) {
selectedItems.add(item);
}
// Liste görüntüleyicisini ve kaydetme butonunu hazırlayan metod
private void prepareRecyclerViewAndButton() {
recyclerView = findViewById(R.id.recyclerView);
saveButton = findViewById(R.id.saveButton);
// RecyclerView için veri adaptörü oluşturun
adapter = new MyAdapter(this, selectedItems);
// RecyclerView'a adaptörü atayın
recyclerView.setAdapter(adapter);
// Kaydetme butonuna tıklandığında çağrılacak metod
saveButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Seçilen öğeleri veritabanına kaydedin
saveSelectedItemsToDatabase(selectedItems);
}
});
}
// Seçilen öğeleri veritabanına kaydeden metod
private void saveSelectedItemsToDatabase(List<String> selectedItems) {
for (String item : selectedItems) {
ContentValues values = new ContentValues();
values.put("item_name", item);
db.insert("table_name", null, values);
}
}
// RecyclerView için veri adaptörü
private class MyAdapter extends RecyclerView.Adapter<MyAdapter.ViewHolder> {
private Context context;
private List<String> items;
public MyAdapter(Context context, List<String> items) {
this.context = context;
this.items = items;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View view = LayoutInflater.from(context).inflate(R.layout.list_item, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
String item = items.get(position);
holder.itemTextView.setText(item);
}
@Override
public int getItemCount() {
return items.size();
}
public class ViewHolder extends RecyclerView.ViewHolder {
public TextView itemTextView;
public ViewHolder(View itemView) {
super(itemView);
itemTextView = itemView.findViewById(R.id.itemTextView);
}
}
}